var nc = new Enumerator(this._ExecQueryWithWhereClause("Win32_NetworkAdapterConfiguration", "Index=" + Obj.Index));
for (; !nc.atEnd(); nc.moveNext())
{
var conf_obj = nc.item();
var conf_node = this._xmlCreateChildNodeWithAttribute(xmlDoc, root, "Configuration", "name", "Adapter configuration:");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, conf_node, "DatabasePath", conf_obj.DatabasePath, "name", "Path to standard Internet database files");
if(conf_obj.DefaultIPGateway != null)
{
var gate_node = this._xmlCreateChildNodeWithAttribute(xmlDoc, conf_node, "DefaultIPGateways", "name", "Default IP gateways:");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, conf_node, "ServiceName", conf_obj.ServiceName, "name", "Service name of the network adapter");
*/
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, conf_node, "TcpipNetbiosOptions", conf_obj.TcpipNetbiosOptions, "name", "NetBIOS over TCP/IP");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, conf_node, "TcpNumConnections", conf_obj.TcpNumConnections, "name", "Maximum Number of connections");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, conf_node, "WINSEnableLMHostsLookup", conf_obj.WINSEnableLMHostsLookup, "name", "Local lookup files are used for WINS resoluton");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "NetConnectionID", Obj.NetConnectionID, "name", "Name of network connection");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "NetConnectionStatus", this._translate_net_connection_status(Obj.NetConnectionStatus), "name", "Status of the network connection");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ServiceName", Obj.ServiceName, "name", "Service name of the network adapter");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "Speed", Obj.Speed, "name", "Current transfer speed, bits per second");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PixelsPerXLogicalInch", Obj.PixelsPerXLogicalInch, "name", "Resolution along the X axis, pixels per inch");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PixelsPerYLogicalInch", Obj.PixelsPerYLogicalInch, "name", "Resolution along the Y axis, pixels per inch");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ScreenHeight", Obj.ScreenHeight, "name", "Logical height of the display, pixels");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ScreenWidth", Obj.ScreenWidth, "name", "Logical width of the display, pixels");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DriveIntegrity", Obj.DriveIntegrity, "name", "Files can be accurately read from the CD device");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "Compression", this._translate_true_false(Obj.Compression), "name", "Hardware data compression is enabled");
if(Obj.Compression == 1)
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "CompressionMethod", Obj.CompressionMethod, "name", "Algorithm or tool used by the device to support compression");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ErrorMethodology", Obj.ErrorMethodology, "name", "Type of error detection and correction supported by device");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "FeaturesHigh", Obj.FeaturesHigh, "name", "High-order 32 bits of the device features flag");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "FeaturesLow", Obj.FeaturesLow, "name", "Low-order 32 bits of the device features flag");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "MaxMediaSize", Obj.MaxMediaSize, "name", "Maximum size, in kilobytes, of media supported by device");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "MediaType", Obj.MediaType, "name", "Media type used by (or accessed by) this device");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "NumberOfMediaSupported", Obj.NumberOfMediaSupported, "name", "Maximum number of individual media which can be supported or inserted in the media access device");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PNPDeviceID", Obj.PNPDeviceID, "name", "Windows Plug and Play device identifier");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ReportSetMarks", this._translate_true_false(Obj.ReportSetMarks), "name", "Setmark reporting is enabled");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PortName", Obj.PortName, "name", "Port that is used to transmit data to a printer");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PrinterStatus", this._translate_printer_status(Obj.PrinterStatus), "name", "Status of printer");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PrintProcessor", Obj.PrintProcessor, "name", "Name of the print spooler that handles print jobs");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ServerName", Obj.ServerName, "name", "Name of the server that controls the printer");
if(Obj.Attributes != null)
{
var attrib_node = this._xmlCreateChildNode(xmlDoc, root, "Attributes");
if(Obj.Attributes & 0x1) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute1", "true", "name", "Print jobs are buffered and queued");
if(Obj.Attributes & 0x2) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute2", "true", "name", "Document to be sent directly to the printer");
if(Obj.Attributes & 0x4) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute3", "true", "name", "Default printer on a computer");
if(Obj.Attributes & 0x8) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute4", "true", "name", "Available as a shared network resource");
if(Obj.Attributes & 0x10) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute5", "true", "name", "Attached to a network");
if(Obj.Attributes & 0x20) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute6", "true", "name", "Hidden from some users on the network");
if(Obj.Attributes & 0x40) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute7", "true", "name", "Directly connected to a computer");
if(Obj.Attributes & 0x80) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute8", "true", "name", "Enable the queue on the printer if available");
if(Obj.Attributes & 0x100) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute9", "true", "name", "Spooler should not delete documents after they are printed");
if(Obj.Attributes & 0x200) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute10", "true", "name", "Start jobs that are finished spooling first");
if(Obj.Attributes & 0x400) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute11", "true", "name", "Queue print jobs when a printer is not available");
if(Obj.Attributes & 0x1000) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute13", "true", "name", "Allow only raw data type jobs to be spooled");
if(Obj.Attributes & 0x2000) this._xmlCreateChildTextNodeWithAttribute(xmlDoc, attrib_node, "Attribute14", "true", "name", "Published in the network directory service");
}
var cc = new Enumerator(this._ExecQueryWithWhereClause("Win32_PrinterConfiguration", "Name=\"" + Obj.Name + "\""));
for (cc.moveFirst(); !cc.atEnd(); cc.moveNext())
{
var conf_obj = cc.item();
var config_node = this._xmlCreateChildNode(xmlDoc, root, "Configuration");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, config_node, "Collate", conf_obj.Collate, "name", "Pages that are printed should be collated");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, config_node, "DitherType", this._translate_print_dither_type(conf_obj.DitherType), "name", "Dither type of the printer");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, config_node, "DriverVersion", conf_obj.DriverVersion, "name", "Version number of the printer driver");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, config_node, "Duplex", conf_obj.Duplex, "name", "Printing is done on both sides");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, config_node, "HorizontalResolution", conf_obj.HorizontalResolution, "name", "Print resolution along the X axis (width), dots per inch");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, config_node, "VerticalResolution", conf_obj.VerticalResolution, "name", "Print resolution along the Y axis (height), dots per inch");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, config_node, "ICMMethod", this._translate_print_icm_method(conf_obj.ICMMethod), "name", "How ICM is handled");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, config_node, "MediaType", this._translate_print_media_type(conf_obj.MediaType), "name", "Type of media being printed on");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, config_node, "Orientation", this._translate_print_orientation(conf_obj.Orientation), "name", "Printing orientation of the paper");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, config_node, "PaperSize", conf_obj.PaperSize, "name", "Size of the paper");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, config_node, "Scale", conf_obj.Scale, "name", "Factor by which the printed output is to be scaled, %");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, config_node, "TTOption", this._translate_print_true_type_option(conf_obj.TTOption), "name", "How TrueType(r) fonts should be printed");
}
i++;
}
}
return xmlDoc;
}
this._collectBatteryInfo = function()
{
var fc = new Enumerator(this._ExecQuery("Win32_Battery"));
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "EstimatedChargeRemaining", Obj.EstimatedChargeRemaining, "name", "Estimated time until battery is fully recharged");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "EstimatedRunTime", Obj.EstimatedRunTime, "name", "Estimate in minutes of the time to battery charge depletion");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ExpectedBatteryLife", Obj.ExpectedBatteryLife, "name", "Amount of time it takes to completely drain the battery after it has been fully charged");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "MaxRechargeTime", Obj.MaxRechargeTime, "name", "Maximum time, in minutes, to fully charge the battery");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "TimeOnBattery", Obj.TimeOnBattery, "name", "Elapsed time in seconds since UPS last switched to battery power");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "TimeToFullCharge", Obj.TimeToFullCharge, "name", "Remaining time to charge the battery fully");
i++;
}
}
return xmlDoc;
}
this._collectPortableBatteryInfo = function()
{
var fc = new Enumerator(this._ExecQuery("Win32_PortableBattery"));
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "EstimatedChargeRemaining", Obj.EstimatedChargeRemaining, "name", "Estimated time until battery is fully recharged");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "EstimatedRunTime", Obj.EstimatedRunTime, "name", "Estimate in minutes of the time to battery charge depletion");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ExpectedBatteryLife", Obj.ExpectedBatteryLife, "name", "Amount of time it takes to completely drain the battery after it has been fully charged");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "MaxRechargeTime", Obj.MaxRechargeTime, "name", "Maximum time, in minutes, to fully charge the battery");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "TimeOnBattery", Obj.TimeOnBattery, "name", "Elapsed time in seconds since UPS last switched to battery power");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "TimeToFullCharge", Obj.TimeToFullCharge, "name", "Remaining time to charge the battery fully");
i++;
}
}
return xmlDoc;
}
this._collectUPSInfo = function()
{
var fc = new Enumerator(this._ExecQuery("Win32_UninterruptiblePowerSupply"));
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "EstimatedChargeRemaining", Obj.EstimatedChargeRemaining, "name", "Estimated time until UPS's battery is fully recharged");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "EstimatedRunTime", Obj.EstimatedRunTime, "name", "Estimated time, in minutes, to battery/generator depletion");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "FirstMessageDelay", Obj.FirstMessageDelay, "name", "Length of time between initial power failure and the first message sent to users");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "IsSwitchingSupply", Obj.IsSwitchingSupply, "name", "UPS is a switching (as opposed to linear) supply");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "LowBatterySignal", Obj.LowBatterySignal, "name", "Has a low battery signal");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "MessageInterval", Obj.MessageInterval, "name", "Length of time between messages sent to users");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PowerFailSignal", Obj.PowerFailSignal, "name", "UPS has a power failure signal");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "RemainingCapacityStatus", Obj.RemainingCapacityStatus, "name", "Capacity remaining in the UPS' batteries and generator");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "TimeOnBackup", Obj.TimeOnBackup, "name", "Elapsed time, in seconds, after the UPS last switched to battery power/generator/was restarted");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "TotalOutputPower", Obj.TotalOutputPower, "name", "Total output power of the UPS");
if(Obj.IsSwitchingSupply == true)
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "TypeOfRangeSwitching", Obj.TypeOfRangeSwitching, "name", "Type of input voltage range switching implemented");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "UPSPort", Obj.UPSPort, "name", "Name of the serial port to which the UPS is connected");
i++;
}
}
return xmlDoc;
}
this._collectFanInfo = function()
{
var fc = new Enumerator(this._ExecQuery("Win32_Fan"));
var fc = new Enumerator(this._ExecQuery("Win32_POTSModem"));
var xmlDoc = null, colItem = null, numItems = 0;
for (; !fc.atEnd(); fc.moveNext())
numItems++;
if(numItems > 0)
{
xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
if(numItems > 1)
{
colItem = xmlDoc.createElement("Item");
xmlDoc.appendChild(colItem);
this._xmlSetAttribute(xmlDoc, colItem, "name", "Plain Old Telephone Service (POTS) modems");
}
var i = 1;
for (fc.moveFirst(); !fc.atEnd(); fc.moveNext())
{
var Obj = fc.item();
var root, num = "";
if(colItem)
{
root = xmlDoc.createElement("Element");
num = " " + String(i);
}
else
{
root = xmlDoc.createElement("Item");
}
this._xmlSetAttribute(xmlDoc, root, "name", ((numItems > 1) ? "Modem" : "Plain Old Telephone Service (POTS) modem") + num);
if(colItem)
{
colItem.appendChild(root);
}
else
{
xmlDoc.appendChild(root);
}
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "AnswerMode", this._translate_answer_mode(Obj.AnswerMode), "name", "Auto-answer/call-back setting for the modem");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "AttachedTo", Obj.AttachedTo, "name", "Port to which this modem is attached");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ModemInfPath", Obj.ModemInfPath, "name", "Path to this modem's .inf file");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PortSubClass", this._translate_modem_port(Obj.PortSubClass), "name", "Definition of the port used for this modem");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "Prefix", Obj.Prefix, "name", "Dialing prefix used to access an outside line");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "RingsBeforeAnswer", Obj.RingsBeforeAnswer, "name", "Number of rings before the modem answers an incoming call");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "StringFormat", Obj.StringFormat, "name", "Type of characters used for text passed through the modem");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "TimeOfLastReset", this._translate_date(Obj.TimeOfLastReset), "name", "Date and time the modem was last reset");
if(Obj.CountriesSupported != null)
{
var cs_node = this._xmlCreateChildNodeWithAttribute(xmlDoc, root, "CountriesSupported", "name", "Countries supported:");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "AudibleAlarm", Obj.AudibleAlarm, "name", "Frame is equipped with an audible alarm");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "CableManagementStrategy", Obj.CableManagementStrategy, "name", "How the various cables are connected and bundled for the frame");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "HeatGeneration", Obj.HeatGeneration, "name", "Amount of heat generated by the chassis, BTU/hour");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "LockPresent", Obj.LockPresent, "name", "Frame is protected with a lock");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "NumberOfPowerCords", Obj.NumberOfPowerCords, "name", "Number of power cords which must be connected to the chassis, for all the components to operate");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PasswordChangeable", Obj.PasswordChangeable, "name", "Is password changeble on this account?");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PasswordExpires", Obj.PasswordExpires, "name", "Password expires on this account");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PasswordRequired", Obj.PasswordRequired, "name", "Password is required on this user account");
i++;
}
}
return xmlDoc;
}
this._collectGroupInfo = function()
{
var fc = new Enumerator(this._ExecQuery("Win32_Group"));
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "InstallState", this._translate_software_install_state(Obj.InstallState), "name", "Installed state of the product");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "SupportsConnectData", Obj.SupportsConnectData, "name", "Protocol allows data to be connected across the network");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "SupportsDisconnectData", Obj.SupportsDisconnectData, "name", "Protocol allows data to be disconnected across the network");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "SupportsEncryption", Obj.SupportsEncryption, "name", "Protocol supports data encryption");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "SupportsFragmentation", Obj.SupportsFragmentation, "name", "Protocol supports transmitting the data in fragments");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "SupportsGracefulClosing", Obj.SupportsGracefulClosing, "name", "Protocol supports two-phase close operations");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "SupportsGuaranteedBandwidth", Obj.SupportsGuaranteedBandwidth, "name", "Protocol has a mechanism to maintain a guaranteed bandwidth");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "SupportsQualityofService", Obj.SupportsQualityofService, "name", "Protocol is capable of Quality of Service (QOS) support");
i++;
}
}
return xmlDoc;
}
this._collectNetworkLoginProfileInfo = function()
{
var fc = new Enumerator(this._ExecQuery("Win32_NetworkLoginProfile"));
var aflags_node = this._xmlCreateChildNodeWithAttribute(xmlDoc, root, "AuthorizationFlags", "name", "Resources a user is authorized to use or modify");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "BadPasswordCount", Obj.BadPasswordCount, "name", "Number of times the user entered a bad password when logging on");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "FullName", Obj.FullName, "name", "Full name of the account");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "HomeDirectory", Obj.HomeDirectory, "name", "Path to the home directory of the user");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "HomeDirectoryDrive", Obj.HomeDirectoryDrive, "name", "Drive letter assigned to the user's home directory");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "LastLogoff", this._translate_date(Obj.LastLogoff), "name", "User last logged off the system (time of logoff)");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "LastLogon", this._translate_date(Obj.LastLogon), "name", "User last logged on to the system (time of logon)");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "LogonHours", Obj.LogonHours, "name", "Times during the week when the user can log on");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "LogonServer", Obj.LogonServer, "name", "Name of the server to which logon requests are sent");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "MaximumStorage", (Obj.MaximumStorage == 4294967295 ? "All available" : Obj.MaximumStorage), "name", "Maximum amount of disk space available to the user, bytes");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "NumberOfLogons", Obj.NumberOfLogons, "name", "Number of successful logons");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PasswordAge", this._translate_pass_age(Obj.PasswordAge), "name", "Length of time a password has been in effect");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PasswordExpires", this._translate_date(Obj.PasswordExpires), "name", "Date/time when the password will expire");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PrimaryGroupId", Obj.PrimaryGroupId, "name", "Relative identifier (RID) of the Primary Global Group for this user");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "Privileges", this._translate_privilege(Obj.Privileges), "name", "Level of privilege assigned");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "Profile", Obj.Profile, "name", "Path to the user's profile");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ScriptPath", Obj.ScriptPath, "name", "Directory path to the user's logon script");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "UnitsPerWeek", Obj.UnitsPerWeek, "name", "Number of time units the week is divided into");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "UserId", Obj.UserId, "name", "Relative identifier (RID) of the user");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "UserType", Obj.UserType, "name", "Type of account");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "Workstations", Obj.Workstations, "name", "Names of workstations from which the user can log on");
if(Obj.Flags != null)
{
var flags_node = this._xmlCreateChildNode(xmlDoc, root, "Flags");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "StandardBias", Obj.StandardBias, "name", "Standard time bias, minutes");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "StandardName", Obj.StandardName, "name", "Standard time zone name");
// All other properties have been 'switched off' - too much space & too little use...
/*
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DaylightDay", Obj.DaylightDay, "name", "DaylightDayOfWeek of the DaylightMonth when the transition from standard time to daylight saving time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DaylightDayOfWeek", Obj.DaylightDayOfWeek, "name", "Day of the week when the transition from standard time to daylight saving time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DaylightHour", Obj.DaylightHour, "name", "Hour of the day when the transition from standard time to daylight saving time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DaylightMillisecond", Obj.DaylightMillisecond, "name", "Millisecond of of the DaylightSecond when the transition from standard time to daylight saving time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DaylightMinute", Obj.DaylightMinute, "name", "Minute of the DaylightHour when the transition from standard time to daylight saving time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DaylightMonth", Obj.DaylightMonth, "name", "Month when the transition from standard time to daylight saving time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DaylightSecond", Obj.DaylightSecond, "name", "Second of of the DaylightMinute when the transition from standard time to daylight saving time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DaylightYear", Obj.DaylightYear, "name", "Year when daylight saving time is in effect (not required)");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "StandardDay", Obj.StandardDay, "name", "StandardDayOfWeek of the StandardMonth when the transition from daylight saving time to standard time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "StandardDayOfWeek", Obj.StandardDayOfWeek, "name", "Day of the week when the transition from daylight saving time to standard time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "StandardHour", Obj.StandardHour, "name", "Hour of the day when the transition from daylight saving time to standard time occurs on this operating system.");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "StandardMillisecond", Obj.StandardMillisecond, "name", "Millisecond of the StandardSecond when the transition from daylight saving time to standard time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "StandardMinute", Obj.StandardMinute, "name", "Minute of the StandardDay when the transition from daylight saving time to standard time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "StandardMonth", Obj.StandardMonth, "name", "Month when the transition from daylight saving time to standard time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "StandardSecond", Obj.StandardSecond, "name", "Second of the StandardMinute when the transition from daylight saving time to standard time occurs on this operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "StandardYear", Obj.StandardYear, "name", "Year when standard time is in effect (not required)");
*/
i++;
}
}
return xmlDoc;
}
this._collectComputerSystemInfo = function()
{
var fc = new Enumerator(this._ExecQuery("Win32_ComputerSystem"));
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DomainRole", this._translate_domain_role(Obj.DomainRole), "name", "Role of this computer in a domain");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "InfraredSupported", Obj.InfraredSupported, "name", "IR port exists on this computer");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "NumberOfProcessors", Obj.NumberOfProcessors, "name", "Number of processors");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PowerManagementSupported", Obj.PowerManagementSupported, "name", "Computer can be power-managed");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PowerState", this._translate_power_state(Obj.PowerState), "name", "Current power state of a computer and its associated operating system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "PowerSupplyState", this._translate_power_supply_state(Obj.PowerSupplyState), "name", "State of the power supply or supplies when last booted");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ThermalState", this._translate_power_supply_state(Obj.ThermalState), "name", "Thermal state of the system when last booted");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "UserName", Obj.UserName, "name", "User currently logged on");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "WakeUpType", this._translate_wake_up(Obj.WakeUpType), "name", "Event that causes the system to power up");
i++;
}
}
return xmlDoc;
}
this._collectOsInfo = function()
{
var fc = new Enumerator(this._ExecQuery("Win32_OperatingSystem"));
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "CodeSet", Obj.CodeSet, "name", "Code page value in use");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "CountryCode", Obj.CountryCode, "name", "Code for the country/region in use");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "CurrentTimeZone", Obj.CurrentTimeZone, "name", "Number of minutes the operating system is offset from GMT");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ForegroundApplicationBoost", this._translate_application_boost(Obj.ForegroundApplicationBoost), "name", "Increase in priority given to the foreground application");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "LastBootUpTime", this._translate_date(Obj.LastBootUpTime), "name", "Date/time when the operating system was last booted");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "LocalDateTime", this._translate_date(Obj.LocalDateTime), "name", "Operating system's version of the local date and time of day (valid in the moment of query)");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "Locale", Obj.Locale, "name", "Language identifier in use");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "MaxNumberOfProcesses", (Obj.MaxNumberOfProcesses == -1 ? "Unlimited" : Obj.MaxNumberOfProcesses), "name", "Maximum number of processes the operating system can support");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "SystemDevice", Obj.SystemDevice, "name", "Physical disk partition on which the OS is installed");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "AutoReboot", Obj.AutoReboot, "name", "Automatically reboot during a recovery operation");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DebugFilePath", Obj.DebugFilePath, "name", "Full path to the debug file");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DebugInfoType", this._translate_debug_info_type(Obj.DebugInfoType), "name", "Type of debugging information written to the log file");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "OverwriteExistingDebugFile", Obj.OverwriteExistingDebugFile, "name", "New log file will overwrite an existing one");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "SendAdminAlert", Obj.SendAdminAlert, "name", "Alert message will be sent to the system administrator");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "WriteDebugInfo", Obj.WriteDebugInfo, "name", "Debugging information is to be written to a log file");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "WriteToSystemLog", Obj.WriteToSystemLog, "name", "Events will be written to a system log");
i++;
}
}
return xmlDoc;
}
this._collectOSBootInfo = function()
{
var fc = new Enumerator(this._ExecQuery("Win32_BootConfiguration"));
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "BootDirectory", Obj.BootDirectory, "name", "Path to the system files required for booting the system");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ConfigurationPath", Obj.ConfigurationPath, "name", "Path to the configuration files");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "Name", Obj.Name, "name", "Name of this configuration");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ScratchDirectory", Obj.ScratchDirectory, "name", "Directory where temporary files can reside during boot time");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "InstallDate", this._translate_date(Obj.InstallDate), "name", "Date when hotfix was installed");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "InstalledBy", Obj.InstalledBy, "name", "Person who installed the update");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "ServicePackInEffect", Obj.ServicePackInEffect, "name", "Service pack in effect when the update was applied");
i++;
}
}
return xmlDoc;
}
this._collectODBCDataSourceInfo = function()
{
var fc = new Enumerator(this._ExecQuery("Win32_ODBCDataSourceSpecification"));
var xmlDoc = null, colItem = null, numItems = 0;
for (; !fc.atEnd(); fc.moveNext())
numItems++;
if(numItems > 0)
{
xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
if(numItems > 1)
{
colItem = xmlDoc.createElement("Item");
xmlDoc.appendChild(colItem);
this._xmlSetAttribute(xmlDoc, colItem, "name", "ODBC Data Sources");
}
var i = 1;
for (fc.moveFirst(); !fc.atEnd(); fc.moveNext())
{
var Obj = fc.item();
var root, num = "";
if(colItem)
{
root = xmlDoc.createElement("Element");
num = " " + String(i);
}
else
{
root = xmlDoc.createElement("Item");
}
this._xmlSetAttribute(xmlDoc, root, "name", "ODBC Data Source" + num);
if(colItem)
{
colItem.appendChild(root);
}
else
{
xmlDoc.appendChild(root);
}
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "CheckID", Obj.CheckID, "name", "Unique data source identifier");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DataSource", Obj.DataSource, "name", "Token name for this data source");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "DriverDescription", Obj.DriverDescription, "name", "Name of associated ODBC driver");
this._xmlCreateChildTextNodeWithAttribute(xmlDoc, root, "Registration", this._translate_odbc_registraton(Obj.Registration), "name", "Type of registration");
return "Interactive user logon (incl. terminal server/remote shell sessions)"; break;
case 3:
case "Network":
return "Used by high performance servers to authenticate clear text passwords"; break;
case 4:
case "Batch":
return "Batch server/high performance (mail or web) server logon"; break;
case 5:
case "Service":
return "Service-type logon"; break;
case 6:
case "Proxy":
return "Proxy-type logon"; break;
case 7:
case "Unlock":
return "Intended for GINA DLLs logging on users who will be interactively using the machine (audit-related)"; break;
case 8:
case "NetworkCleartext":
return "(Windows 2000/XP/.NET Server 2003 family) Preserves the name and password in the authentication packages, allowing the server to make connections to other network servers while impersonating the client"; break;
case 9:
case "NewCredentials":
return "(Windows 2000/XP/.NET Server 2003 family) Allows the caller to clone its current token and specify new credentials for outbound connections"; break;
case 10:
case "RemoteInteractive":
return "Terminal Server session that is both remote and interactive"; break;
case 11:
case "CachedInteractive":
return "Attempt cached credentials without accessing the network"; break;
case 12:
case "CachedRemoteInteractive":
return "Terminal Server session that is both remote and interactive (used for internal auditing)"; break;